Інформація про новину
  • Переглядів: 318
  • Дата: 13-02-2022, 11:57
13-02-2022, 11:57

12. Вибір даних в Access

Категорія: Інформатика





Попередня сторінка:  11. Обмеження цілісності в Access
Наступна сторінка:   13. Поняття списку в Python

Чи можна запит, що стосується багатьох таблиць, замінити кількома розширеними фільтрами, застосованими до кожної з цих таблиць?

Ми вже вміємо створювати бази даних, вводити в них дані й пев-ною мірою забезпечувати їх несуперечливість. Однак від баз даних не буде ніякої користі, якщо дані, які в них зберігаються, ніхто не отримуватиме. Щоб отримати дані з маленьких баз, таких як ми створювали, достатньо просто переглянути таблиці. Але бази, що використовуються в реальному житті, часто містять десятки таблиць і тисячі записів у кожній. Щоб знайти в такій базі потрібні дані, їх потрібно відібрати за певними критеріями. Є кілька засобів такого відбору: сортування та фільтрація подібні до однойменних засобів табличного процесора і застосовуються до однієї таблиці, а запити дають змогу відібрати дані за умовами, що стосуються кількох таблиць.

Завдання № 1

вкажи, за якими стовпцями і в якому порядку (за зростанням чи спаданням) могло бути відсортовано зображену таблицю.

 

 

Завдання № 2

дізнайся з рубрики «Запитання-відповіді» про фільтри в Microsoft Access (вони дуже подібні до фільтрів у табличному процесорі), а також про оператор Like (Схоже). вкажи, яким фільтрам відповідає наповнення зображеної таблиці.

Завдання № 3

1. Застосувавши розширений фільтр, вибери всі автобуси, які або випущені після 2015 року, або курсують маршрутом із номером >10.

2. За допомогою розширеного фільтру вибери всі автобуси 9-го маршруту, номерний знак яких містить англійську літеру «К».

Завдання № 4

Опиши словами, що знаходять зображені запити.

Завдання № 5

Уважно ознайомся з матеріалом рубрики «Запитання-відповіді», що стосується конструювання запитів. Проаналізуй наповнення таблиць A та B:

Запит:

І вкажи, які з наведених записів відображатимуться в результаті виконання цього запиту.

Завдання № 6

Якими даними могли бути заповнені таблиці автобусів та маршрутів, щоб виконання зображеного запиту дало зображений результат?

Завдання № 7

Дізнайся з рубрики «Запитання-відповіді» про конструювання запитів,

зокрема параметризованих. Сконструюй та виконай такі запити.

1. Визначити номерні знаки та моделі автобусів, на маршрутах яких більше 15 зупинок.

2. Визначити всю інформацію про автобуси, що курсують маршрутами, кількість зупинок на яких перевищує введену користувачем.

3. Визначити всю інформацію про маршрути довжиною більше 10 км, на яких курсують автобуси введеної користувачем моделі.

ЗАПИТАННЯ-ВІДПОВІДІ

Як виконують та в яких задачах використовують сортування?

Сортування, як ти вже знаєш, — це впорядкування об'єктів у порядку зростання або спадання значень певної властивості. У СКБД Microsoft Access сортування виконують майже так само, як і в табличному процесорі:

відкрий таблицю в режимі редагування даних; виділи стовпець або стовпці, за значеннями яких потрібно відсортувати таблицю;

натисни кнопку

або

На відміну від табличного процесора, в таблиці бази даних під час сортування переставляються цілі рядки, навіть якщо виділено не всю таблицю, а лише деякі стовпці.

Про те, що таблицю відсортовано за певним стовпцем, свідчить позначка ▼т (за зростанням) чи ▼; (за спаданням) в заголовку стовпця. Щоб скасувати сортування, натисни кнопку V Видалити сортування .

Якщо під час сортування виділено кілько стовпців, то таблиця спочатку сортується за найлівішим із виділених стовпців, а потім кожна група записів з однаковим значенням в найлівішому виділеному стовпці сортується за значеннями наступного стовпця тощо.

Найпоширеніша задача, для розв'язання якої стане в пригоді сортування, — це пошук записів, що містять в певному полі найменше або найбільше значення серед усіх записів таблиці. Після сортування всі такі записи відображаються вгорі таблиці.

Для чого призначені та яку структуру мають фільтри в Microsoft Access?

Призначення фільтрів — відбір записів однієї таблиці за певною умовою.

Як і в табличному процесорі, в MS Access є звичайні фільтри, що накладають умови на значення одного стовпця, і розширені фільтри, у яких умови відбору можуть формуватися за значеннями кількох стовпців.

Звичайні фільтри створюють кнопками

та

Розширений фільтр створюють за допомогою команди «Додатково \ Розширений фільтр/сортування».

Як і в табличному процесорі, у розширеному фільтрі умови, що розташовані в одному рядку, з'єднуються сполучником «І», а в різних

рядках — сполучником «АБО». Крім того, в цьому фільтрі можна задавати сортування за певними стовпцями. Наприклад, на малюнку показано фільтр для відбору автобусів, які або курсують маршрутом із номером більше 10, або випущені після 2015 року. Також результати фільтрації сортуються в порядку зростання року випуску.

до фільтрації:

Після фільтрації:

Для чого призначений оператор Like (Схоже)?

Цей оператор використовують, якщо умовою пошуку або фільтрації даних є входження певного рядка в більший рядок тексту. Після слова Like записують вираз із символами підстановки, у якому * означає довільну послідовність символів, а ? — один довільний символ. Наприклад, якщо потрібно відібрати автобуси, в назві моделей яких є слово «LAZ», можна застосувати такий розширений фільтр:

В українській версії MS Access замість слова Like в конструкторі фільтра можна записувати його переклад Схоже.

Що таке запит і як його сконструювати?

Запит подібний до фільтру, але може бути застосований до кількох таблиць відразу. Щоб створити запит, потрібно: вибрати команду «Створення\Макет запиту», у результаті виконання якої відкриється вікно конструктора запиту; у верхню частину вікна конструктора з області «Усі об'єкти Access» перетягнути задіяні в запиті таблиці;

у нижній частині вікна конструктора вказати, за якою умовою відбиратимуться записи та які поля відображатимуться.

Після створення запит можна запустити, вибравши на стрічці «Конструктор» команду «Запуск».

Рядки в нижній частині вікна конструктора мають таке призначення:

Наприклад, на рисунку вище зображено запит Визначити номерні знаки автобусів, у назві моделі яких є слово LAZ і які курсують маршрутами довжиною більше 6 км.

Увага!

Якщо в запиті фігурують кілька таблиць, вони мають бути з'єднані між собою у вікні «Зв'язки» (ці сполучення відображаються також у верхній частині вікна конструктора запиту). Тоді під час виконання запиту з'єднуватимуться записи з рівними значеннями зв'язаних полів, наприклад, автобуси приєднуватимуться саме до своїх маршрутів. Якщо таблиці, що фігурують в запиті, не з'єднані, то всі записи однієї таблиці з'єднаються з усіма записами іншої і в результатах запиту буде мало логіки.

Що таке параметризований запит і як його створити?

У параметризованому запиті значення полів порівнюються не з константами (тобто фіксованими числами чи рядками), а з іншими значеннями, які вводить користувач. Замість такого значення слід записати в квадратних дужках запит на введення. Наприклад, на малюнку зображено запит Визначити номери маршрутів, довжина яких перевищує введену користувачем, а також моделі автобусів, що курсують цими маршрутами.

Під час виконання запиту буде відображено вікно, у яке користувач має ввести мінімальну довжину шуканого маршруту:

Як у запиті відобразити всі поля певної таблиці?

Потрібно з таблиці у верхній частині вікна запиту перетягнути в рядок «Поле» нижньої частини не назву якогось поля, а символ «*». Наприклад, нижче зображено запит Визначити всю інформацію про маршрути, якими курсують автобуси 2010 року випуску.

Як зберегти запит і для чого це робити?

Запити, особливо параметризовані, призначені для багаторазового виконання. Користувач може забажати виконати запит знову з іншими значеннями параметрів або після того, як дані в базі змінилися. Щоб зберегти запит, потрібно: закрити вікно його конструктора; підтвердити збереження змін;

у вікні «Зберегти як» ввести назву запиту і натиснути кнопку «OK».

ПЕРЕВІР СЕБЕ

1. Поясни відмінності між: звичайними та розширеними фільтрами; розширеними фільтрами та запитами; звичайними та параметризованими запитами.

2. Опиши словами, що знаходять зображені запити для бази даних учнів та вчителів.

3. Які із зображених фільтрів завжди відображають усі записи з таблиці автобусів, незалежно від її наповнення? вкажи всі правильні відповіді. їх може бути одна або більше.

4. У базі даних учнів та класів створи такі запити: визначити всю інформацію про класи, де вчиться учень із введеним користувачем прізвищем; визначити прізвища учнів, які або народилися після 01.01.2010, або вчаться в будь-якому з 9-х класів.

5. Чи можна запит, що стосується багатьох таблиць, замінити кількома розширеними фільтрами, застосованими до кожної з цих таблиць? Аргументуй відповідь.

 

 

Це матеріал з підручника Інформатика 9 клас Коршунова 2022

 




Попередня сторінка:  11. Обмеження цілісності в Access
Наступна сторінка:   13. Поняття списку в Python



^